﻿using System;

namespace UnityEngine.PostProcessing
{
	// Token: 0x02000112 RID: 274
	[Serializable]
	public class VignetteModel : PostProcessingModel
	{
		// Token: 0x170000E7 RID: 231
		// (get) Token: 0x06000510 RID: 1296 RVA: 0x00027E8D File Offset: 0x0002608D
		// (set) Token: 0x06000511 RID: 1297 RVA: 0x00027E95 File Offset: 0x00026095
		public VignetteModel.Settings settings
		{
			get
			{
				return this.m_Settings;
			}
			set
			{
				this.m_Settings = value;
			}
		}

		// Token: 0x06000512 RID: 1298 RVA: 0x00027E9E File Offset: 0x0002609E
		public override void Reset()
		{
			this.m_Settings = VignetteModel.Settings.defaultSettings;
		}

		// Token: 0x04000722 RID: 1826
		[SerializeField]
		private VignetteModel.Settings m_Settings = VignetteModel.Settings.defaultSettings;

		// Token: 0x02000113 RID: 275
		public enum Mode
		{
			// Token: 0x04000724 RID: 1828
			Classic,
			// Token: 0x04000725 RID: 1829
			Masked
		}

		// Token: 0x02000114 RID: 276
		[Serializable]
		public struct Settings
		{
			// Token: 0x170000E8 RID: 232
			// (get) Token: 0x06000513 RID: 1299 RVA: 0x00027EAC File Offset: 0x000260AC
			public static VignetteModel.Settings defaultSettings
			{
				get
				{
					return new VignetteModel.Settings
					{
						mode = VignetteModel.Mode.Classic,
						color = new Color(0f, 0f, 0f, 1f),
						center = new Vector2(0.5f, 0.5f),
						intensity = 0.45f,
						smoothness = 0.2f,
						roundness = 1f,
						mask = null,
						opacity = 1f,
						rounded = false
					};
				}
			}

			// Token: 0x04000726 RID: 1830
			[Tooltip("Use the \"Classic\" mode for parametric controls. Use the \"Masked\" mode to use your own texture mask.")]
			public VignetteModel.Mode mode;

			// Token: 0x04000727 RID: 1831
			[Tooltip("Vignette color. Use the alpha channel for transparency.")]
			[ColorUsage(false)]
			public Color color;

			// Token: 0x04000728 RID: 1832
			[Tooltip("Sets the vignette center point (screen center is [0.5,0.5]).")]
			public Vector2 center;

			// Token: 0x04000729 RID: 1833
			[Tooltip("Amount of vignetting on screen.")]
			[Range(0f, 1f)]
			public float intensity;

			// Token: 0x0400072A RID: 1834
			[Tooltip("Smoothness of the vignette borders.")]
			[Range(0.01f, 1f)]
			public float smoothness;

			// Token: 0x0400072B RID: 1835
			[Tooltip("Lower values will make a square-ish vignette.")]
			[Range(0f, 1f)]
			public float roundness;

			// Token: 0x0400072C RID: 1836
			[Tooltip("A black and white mask to use as a vignette.")]
			public Texture mask;

			// Token: 0x0400072D RID: 1837
			[Tooltip("Mask opacity.")]
			[Range(0f, 1f)]
			public float opacity;

			// Token: 0x0400072E RID: 1838
			[Tooltip("Should the vignette be perfectly round or be dependent on the current aspect ratio?")]
			public bool rounded;
		}
	}
}
